package opencm.cli;

import java.util.List;

import opencm.Consulta;
import opencm.Main;
import opencm.Paciente;
import opencm.RepositorioConsulta;
import opencm.RepositorioPaciente;

public class ExcluirPaciente extends Acao {

	private RepositorioPaciente pacientes;
	private RepositorioConsulta consultas;

	public ExcluirPaciente() {
		this.pacientes = Main.repositorioPaciente;
		this.consultas = Main.repositorioConsulta;
	}
	
	@Override
	public void executar() {
		Paciente paciente = selecionarUm("Paciente", this.pacientes.pesquisar());
		List<Consulta> consultas = this.consultas.pesquisar(paciente);
		for(Consulta consulta : consultas) {
			consulta.desmarcar();
			this.consultas.remover(consulta);
		}
		this.pacientes.remover(paciente);
		out.println("Paciente removido com sucesso!");
	}

	@Override
	public String toString() {
		return "Excluir Paciente";
	}

}
